#define _CRT_SECURE_NO_WARNINGS 1
//#include <iostream>
//#include <map>
//#include <set>
//#include <queue>
//using namespace std;
//int t;
//
//int main()
//{
//    cin >> t;
//    map<int, priority_queue<int>> m;
//    while (t--)
//    {
//        int n;
//        cin >> n;
//        m.clear();
//        for (int i = 0; i < n; i++)
//        {
//            int a, b;
//            cin >> a >> b;
//            m[a].push(b);
//        }
//
//        long long ans = 0;
//
//        for (auto p = m.begin(); p != m.end(); p++)
//        {
//            int x = p->first;
//            int i = 0;
//            while (!p->second.empty())
//            {
//                if (i >= x) break;
//                ans += p->second.top();
//                p->second.pop();
//                i++;
//            }
//        }
//
//        cout << ans << endl;
//    }
//    return 0;
//}
//#include <iostream>
//#include <cmath>
//#include <set>
//#include <vector>
//using namespace std;
//typedef long long LL;
//vector<int> v;
//set<int> s;
//int find(int x)
//{
//	int l = 0, r = v.size();
//	while (l < r)
//	{
//		int mid = l + r >> 1;
//		if (v[mid] > x) r = mid;
//		else l = mid + 1;
//	}
//
//	return l;
//}
//int main()
//{
//	int t;
//	cin >> t;
//	for (int i = 1; i <= 1e5; i++)
//	{
//		if ((LL)i * i <= 1e9)
//			s.insert(i * i);
//		if ((LL)i * i * i <= 1e9)
//			s.insert(i * i * i);
//	}
//
//	for (auto p = s.begin(); p != s.end(); p++)
//		v.push_back(*p);
//	while (t--)
//	{
//		int n;
//		cin >> n;
//		cout << find(n) << endl;
//	}
//	return 0;
//}
#include <iostream>
#include <cmath>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
typedef long long LL;
int main()
{
	int t;
	cin >> t;
	while (t--)
	{
		string a, s;
		cin >> a >> s;
		string b = "";
		for (int i = a.size() - 1, j = s.size() - 1; i >= 0; i--)
		{
			if (s[j] < a[i])
			{
				j -= 2;
				b = b + reverse(to_string(atoi(s.substr(s.size() - j, 2) - atoi(a[i]));
			}
			else
			{
				j--;
				b = b + to_string(atoi(s.substr(s.size() - j, 1)) - a[i]);
			}
		}
		reverse(b.begin(), b.end());

		cout << b << endl;
	}
	return 0;
}